package com.runa.monitor.platinterface.netservice.equipment.fail;

import com.runa.monitor.comm.dto.Archive;
import com.runa.monitor.comm.dto.Node;
import com.runa.monitor.platinterface.backwork.function.TaskFunction;
import com.runa.monitor.platinterface.netservice.equipment.NetEqu;
import com.runa.rccprotocol.dto.equdata.EquData;
import com.runa.rccprotocol.dto.param.ExtendParam;
import lombok.extern.slf4j.Slf4j;

import java.util.List;
import java.util.Map;

/**
 * 2024/7/9 14:58
 * zhangYB
 */
@Slf4j
public class BaseDriver<T> extends NetEqu<T> {


    public BaseDriver(T serial, Integer timeout) {
        super(serial, timeout);
    }

    @Override
    public void readNodeEqu(List<Node> nodes, TaskFunction function, EquData.EquDataType type) {
        log.debug("readNodeEqu {} ", serial());
    }

    @Override
    public void setNodeEquArchive(List<Archive> archives, TaskFunction function) {
        log.debug("setNodeEquArchive {} ", serial());
    }

    @Override
    public void clearNodeEquArchive(TaskFunction function) {
        log.debug("clearNodeEquArchive {}", serial());
    }

    @Override
    public void valveOnOffControl(List<Node> nodeList, boolean ifLock, Integer opening, TaskFunction function) {
        log.debug("valveOnOffControl {}", serial());

    }

    @Override
    public void readNodeRecord(List<Integer> indexes, TaskFunction function) {
        log.debug("readNodeRecord {}", serial());

    }

    @Override
    public void sentPublicUnitRecord(List<Node> nodeList, Integer model, Map param, TaskFunction function) {
        log.debug("sentPublicUnitRecord {}", serial());

    }

    @Override
    public void sentPublicUnitModel(List<Node> nodeList, boolean model, TaskFunction function) {
        log.debug("sentPublicUnitModel {}", serial());

    }

    @Override
    public void sentExtendParam(ExtendParam param, TaskFunction function) {
        log.debug("sentExtendParam {}", serial());

    }

    @Override
    public void readPublicUnitRecord(Node valve, Integer model, TaskFunction function) {
        log.debug("readPublicUnitRecord {}", serial());

    }

    @Override
    public void readPublicUnitAndMeter(Node valve, Node meter, TaskFunction function) {
        log.debug("readPublicUnitAndMeter {}", serial());

    }

    @Override
    public void heartbeatUpdate() {
        log.debug("heartbeatUpdate {} ", serial());

    }

    @Override
    public boolean heartStop() {
        return false;
    }
}
